/**
 * 将秒数转换为时分秒格式
 * @param {Number} seconds - 秒数
 * @returns {String} 格式化后的时间字符串 (HH:MM:SS 或 MM:SS)
 */
export function formatTime(seconds) {
  seconds = Number(seconds)
  // 如果传入的不是数字或为负数，返回默认值
  if (typeof seconds !== 'number' || seconds < 0) {
    return '00:00'
  }
  
  // 计算小时、分钟、秒
  const hours = Math.floor(seconds / 3600)
  const minutes = Math.floor((seconds % 3600) / 60)
  const secs = Math.floor(seconds % 60)
  
  // 辅助函数：将数字补零到两位
  const pad = (num) => String(num).padStart(2, '0')
  
  // 如果有小时，返回 HH:MM:SS 格式
  if (hours > 0) {
    return `${pad(hours)}:${pad(minutes)}:${pad(secs)}`
  }
  
  // 否则返回 MM:SS 格式
  return `${pad(minutes)}:${pad(secs)}`
}

/**
 * 获取 Android 应用缓存路径
 * @returns {String} Android 应用缓存路径，例如：/storage/emulated/0/Android/data/com.app.feiman/cache
 * 注意：仅在 Android 平台有效，其他平台返回空字符串
 */
export function getAndroidCachePath() {
  // #ifdef APP-PLUS
  if (plus.os.name === 'Android') {
    try {
      // 获取应用的 Context
      const main = plus.android.runtimeMainActivity()
      const context = main.getApplicationContext()
      
      // 获取外部缓存目录（推荐使用，通常在 /storage/emulated/0/Android/data/包名/cache）
      const File = plus.android.importClass('java.io.File')
      const externalCacheDir = context.getExternalCacheDir()
      
      if (externalCacheDir) {
        // 获取绝对路径
        const cachePath = externalCacheDir.getAbsolutePath()
        return cachePath
      }
      
      // 如果外部缓存目录不可用，使用内部缓存目录
      const cacheDir = context.getCacheDir()
      if (cacheDir) {
        return cacheDir.getAbsolutePath()
      }
      
      return ''
    } catch (error) {
      console.error('获取 Android 缓存路径失败:', error)
      return ''
    }
  }
  // #endif
  
  return ''
}

